#include "include/Grid/supcell.h"

/**************************************
/*          Constructors
/**************************************/

    Supcell::SupCell(T value)
    {
        int *** mask = new int[1,1,1];
        mask[0,0,0]=1;
        Initialize(mask, value);
    }

    Supcell::SupCell(int *** mask, T value)
    {
        Initialize(mask, value);
    }

    void Supcell::Initialize(int *** mask, T value)
    {
        m_Width     =   mask.GetLength(2);
        m_Height    =   mask.GetLength(1);
        m_Depth     =   mask.GetLength(0);

        m_Mask      =   mask;
        m_Value     =   value;
    }

/**************************************
/*          Methods
/**************************************/

    /**************************************
    /*          Members
    /**************************************/

    /// <summary>
    ///     Use this fonction to directly set the Mask of the supCell with custom values
    /// </summary>
    /// <param name="mask"></param>
    void Supcell::SetMask(int *** mask)
    {
        m_Mask = mask;
    }

